#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define PRAISEL "You are good"


/*sizeof返回的是内存大小，包括没存储字符串的空间，包括'\0'*/
/*strlen返回的是字符串的大小，包括字符间的空格，不包括'\0'*/
int main (void)
{
    char *name = malloc(20) ;

    puts("What is your name");

    scanf("%s" , name);// scanf只能读取字符串中的第一个单词，碰到空格就读取接受，读取字符串用fgets

    printf("%s ,%s\n",name ,PRAISEL);

    printf("Your name of %zd letters occupies %zd memory \n",strlen(name),sizeof(name));

    printf("The phrase of praise has %zd letters .\n",strlen(PRAISEL));

    printf("and occupies %zd memory \n",sizeof PRAISEL);

    return 0;

}